1. Field of the Invention
The present invention relates to a method, an apparatus, and a program storage medium storing a program for wireless communication. More particularly, the present invention relates to a method for determining a transmission rate in accordance with the transmission quality of a wireless transmission path in wireless communication capable of selectively using a plurality of transmission rates, and to a wireless communication apparatus and a program storage medium storing a program for carrying out this method.
2. Description of the Related Art
In recent years, wireless networks, such as a wireless LAN (Local Area Network) as represented by the IEEE (The Institute of Electrical and Electronics Engineers, Inc.) 802.11, etc., are being widespread in place of wired networks, because of having advantages, such as a higher degree of freedom in the installation locations of apparatuses. Also, various types of applications, such as applications handling a large volume of data, for example images, etc., have come to make frequent accesses to a network. As a result, a high transmission rate is demanded for a wireless LAN, and thus further improvement in throughput is requested.
In order to achieve such an object, IEEE802.11 makes it possible to use a plurality of transmission rates in a physical layer (PHY layer), and to select a best suited communication rate in accordance with changes in the actual communication environment (This transmission rate control is called link adaptation). For example, if the actual communication environment is changing as shown in FIG. 1 (refer to a dashed line in the figure), the transmission rate used in the network is changed so as to meet the actual communication environment (refer to a solid line in the figure).
As a result, for example, when a transmission state of a wireless transmission path (in the following, simply called “transmission quality”) is favorable, a high transmission rate is selected to achieve high throughput, whereas if the transmission quality is not favorable, a low transmission rate (that is to say, an error-resistant transmission rate) is selected. Accordingly, the reachability of transmission data improves, and thus the throughput per unit time (the amount of transmission information) improves. In this regard, each transmission rate is achieved by the combination of a modulation method in accordance with the transmission rate, the redundancy (the number of antennas in the case of a communication system using MIMO (Multiple Input Multiple Output) such as EWC, WiMAX, etc.), and the like.
Here, the transmission path quality to be a selection criterion at the time of selecting a transmission rate can be estimated by various kinds of parameters. For example, a proposal has been made of a system in which the transmission path quality is estimated, for example, in accordance with the retransmission state of packets to determine a transmission rate (refer to Japanese Unexamined Patent Application Publication No. 2004-328652).
FIG. 2 illustrates a configuration of a related-art wireless communication system which determines a transmission rate in accordance with a retransmission state. FIG. 3 illustrates an example of a configuration of an AP 1 included in that system.
In the related-art wireless LAN system, under the control of the AP 1, a BSS (Base Service Set) is formed by the AP 1 and one or more STAs 2-1, 2-2, . . . , 2-n (in the following, called STA 2 in the case where it is not necessary to make a distinction individually). The communication between each of the STAs 2 is achieved through the AP 1 (in the infrastructure mode).
The AP 1 (FIG. 3) forming the BSS includes MAC circuits 11 and 18, PHY circuits 12 and 17, RF circuits 13 and 16 corresponding to Tx (transmission) and Rx (receiving), respectively. In the circuit group of the Tx side, the MAC circuits 11 and the PHY circuits 12 perform processing corresponding to a MAC layer and a PHY layer, respectively on the data supplied from an upper layer 19. As a result, the signal corresponding to the data is up-converted by the RF circuit 13, and is output from an antenna 14. At the same time, in the Rx side, the signal received by an antenna 15 is down-converted by the RF circuit 16, then is subjected to processing corresponding to the PHY layer and the MAC layer in the PHY circuit 17 and the MAC circuit 18, respectively, and is supplied to the upper layer 19.
The retransmission control of a data packet is performed by the Tx-side MAC circuit 11, and the transmission rate used for communication is also determined by the MAC circuit 11 together with the retransmission control. In this regard, the method of retransmission control by the MAC circuit 11 is defined by IEEE802.11. Depending on whether the transmission side has received an ACK packet corresponding to a data packet to be transmitted, a determination is made on whether it is necessary to retransmit the data packet.
A specific configuration of the MAC circuit 11 achieving such a function is shown in FIG. 4.
When a packet transmission instruction is input into the MAC circuit 11 from the upper layer 19, a packet transmission section 31 supplies the data packet (in the following, called a data packet A), specified by the instruction, which is held in a data buffer 32, to the PHY circuit 12.
At this time, the packet transmission section 31 supplies the data packet A to the PHY circuit 12, and at the same time, controls a sequence-number management section 33 in order to add a sequence number W to the data packet A to be transmitted, which is held in the data buffer 32.
Also, the packet transmission section 31 outputs a packet transmission signal indicating that a data packet has been transmitted to a transmission-rate determination section 22 at the time of transmission of a packet.
After the packet transmission section 31 transmitted the data packet A, an ACK receiving section 34 becomes an ACK-packet waiting state, that is to say, a state of waiting for an ACK packet flag indicating that an ACK packet for the transmitted data packet A, supplied from the MAC circuit 18, has been received. In this state, when the ACK receiving section 34 receives the ACK packet flag, it is determined that the data packet A has reached the receiving side, and thus the data packet with the sequence number W is deleted from the data buffer 32.
On the other hand, if the ACK packet flag has not been received, the ACK receiving section 34 informs the packet transmission section 31 of that, and the packet transmission section 31, which has received that information, supplies the data packet A held in the data buffer 32 to the PHY circuit 12 again. At this time, the packet transmission section 31 outputs a packet retransmission signal, which indicates that the retransmission of the data packet has been done, to the transmission-rate determination section 22.
At the same time, in the transmission-rate determination section 22, a packet-retransmission count signal output section 51 performs the following processing.
1. When a packet retransmission signal is supplied from the transmission control section 21 (the packet transmission section 31 thereof), the packet-retransmission count signal output section 51 supplies a packet-retransmission count signal to a number-of-packet-retransmission holding section 53.
2. When a packet transmission signal is supplied from the transmission control section 21 (the packet transmission section 31 thereof), the packet-retransmission count signal output section 51 supplies a packet-transmission count signal to a number-of-packet-transmission holding section 54.
In this manner, when either count signal is supplied from the packet-retransmission count signal output section 51, the number-of-packet-retransmission holding section 53 counts the number (Y) of transmitted data packets and the number (X) of times of data-packet retransmission during a sampling period for the determination of a rate, and supplies the numbers to an error-rate calculation section 55.
As a result, in the error-rate calculation section 55, an error rate is calculated by dividing the number (X) of times of data-packet retransmission by the number (Y) of times of data-packet transmission.
A transmission-rate determination section 56 compares the error rate supplied from the error-rate calculation section 55 and a threshold value held in a threshold-value holding section 57, determines a transmission rate on the basis of the comparison result, and supplies a predetermined rate information signal to the PHY circuit 12.
Specifically, if the error rate is greater than a predetermined threshold value D, the transmission-rate determination section 56 assumes that errors occur because the transmission rate being used currently is aggressive compared with the transmission state of the wireless transmission path. Thus, the transmission-rate determination section 56 determines to lower the transmission rate less than the current transmission rate, and supplies the rate information signal indicating that to the PHY circuit 12.
Also, if the error rate is less than a predetermined threshold value U, the transmission-rate determination section 56 assumes that a higher transmission rate than the transmission rate currently being used can be used. Thus, the transmission-rate determination section 56 determines to raise the transmission rate, and supplies the rate information signal indicating that to the PHY circuit 12.
Furthermore, if the error rate is in the rage of the threshold value U to the threshold value D, the transmission-rate determination section 56 determines that the transmission rate currently being used is appropriate, and supplies the rate information signal indicating that the transmission rate is maintained to the PHY circuit 12. As a result, in the PHY circuit 12, the transmission rate is changed in accordance with the rate information signal supplied from the MAC circuit 11. That is to say, the modulation method of the data packets supplied from the MAC circuit 11 is changed.
In this regard, here, the raising and the lowering of the transmission rate may be carried out by each one phase (for example, the raising from 12 Mbps to 18 Mbps), or may be carried out by two phases or more at once (for example, from 12 Mbps to 24 Mbps).